home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 7 / PC World Interactive 7.iso / program / vbkontrol.exe / VBSTAK.ZIP / VBSTAK / INITOOL.BAS < prev    next >
BASIC Source File  |  1994-07-12  |  3KB  |  81 lines

  1. ' Constants for the TSE TOOLS 1
  2. Global Const INI_INPUT_MODE = 0
  3. Global Const INI_OUTPUT_MODE = 1
  4.  
  5. 'Declarations for initialization files
  6. Declare Function GetPrivateProfileString% Lib "kernel" (ByVal lpAppName$, ByVal lpKeyName$, ByVal lpDefault$, ByVal lpReturnString$, ByVal nSize%, ByVal lpFileName$)
  7. Declare Function GetProfileInt% Lib "Kernel" (ByVal lpAppName$, ByVal lpKeyName$, ByVal nDefault%)
  8. Declare Function GetProfileString% Lib "Kernel" (ByVal lpAppName$, ByVal lpKeyName$, ByVal lpDefault$, ByVal lpReturnedString$, ByVal nSize%)
  9. Declare Function WriteProfileString% Lib "Kernel" (ByVal lpAppName$, ByVal lpKeyName$, ByVal lpString$)
  10. Declare Function GetPrivateProfileInt% Lib "Kernel" (ByVal lpAppName$, ByVal lpKeyName$, ByVal nDefault%, ByVal lpFileName$)
  11. Declare Function WritePrivateProfileString% Lib "Kernel" (ByVal lpAppName$, ByVal lpKeyName$, ByVal lpString$, ByVal lpFileName$)
  12.  
  13.  
  14. Function GetIniField (lpApplicationName As String, lpKeyName As String, lpFileName As String) As String
  15. '
  16. ' Description: Return an value field within an ini aplication group
  17. ' Parameters: lpApplicationName - '[' bracketed application name to search for
  18. '             lpKeyName - parameter to locate
  19. '             lpFileName  - name of the .ini file to use
  20. ' Returns: field value string
  21. ' Side effects:
  22. ' Original: 01/21/94 - CHSM
  23. '
  24.   Dim plDefault As String, lpReturnString As String, Size As Integer, Valid As Integer
  25.     lpReturnString = Space$(128)
  26.     Size = Len(lpReturnString)
  27.  
  28.  
  29.     
  30.     ' Get the requested field
  31.     Valid = GetPrivateProfileString(lpApplicationName, lpKeyName, lpDefault, lpReturnString, Size, lpFileName)
  32.  
  33.  
  34.     '* Discard the trailing spaces and null character.
  35.     
  36.     ReturnValue = Left$(lpReturnString, Valid)
  37.  
  38. GetIniFieldExit:
  39.   'If iniFile <> 0 Then Close iniFile
  40.   GetIniField = ReturnValue
  41.   Exit Function
  42.  
  43. GetIniFieldError:
  44.   result = HandleError("Get .ini error ")
  45.   ReturnValue = ""
  46.   Resume GetIniFieldExit
  47.  
  48. End Function
  49.  
  50. Function HandleError (errorMessage As String)
  51. ' Default error handler
  52.   HandleError = MsgBox(errorMessage & Error, MB_ABORTRETRYIGNORE + MB_ICONSTOP)
  53. End Function
  54.  
  55. Sub SetIniField (lpApplicationName As String, lpKeyName As String, lpString As String, lpFileName As String)
  56. '
  57. ' Description: Write a field to an ini file within an ini group
  58. ' Parameters: fileName  - name of the file to use
  59. '             groupName - '[' bracketed group to search for
  60. '             fieldName - parameter to locate
  61. '             valueString - parameter setting
  62. ' Returns:
  63. ' Parameter: field value string
  64. ' Side effects:
  65. ' Original: 01/21/94 - CHSM
  66. '
  67.     Valid% = WritePrivateProfileString(lpApplicationName, lpKeyName, lpString, lpFileName)
  68.  
  69.   On Error GoTo SetIniFieldError
  70.   ' Input the file string
  71.  
  72. SetIniFieldExit:
  73.   Exit Sub
  74.  
  75. SetIniFieldError:
  76.   result = HandleError("Get .ini error ")
  77.   Resume SetIniFieldExit
  78.  
  79. End Sub
  80.  
  81.